Please design an experiment (using the cache simulator) for studying the factors that affects the performance of cache accesses. We will address traces from gcc_ld_trace.txt or go_ld_trace.txt as benchmarks. Please fill your results and plot graph of each table. In particular, what does the results suggest about the design of cache.
# Compile the CacheSim.c file
gcc -o CacheSim CacheSim.c -lm
# Run the CacheSim file
# Cache size of 4 KB.
# Block size of 4 bytes.
./CacheSim gcc_ld_trace.txt 4 4
! ./CacheSim gcc_ld_trace.txt 4 4
HIT:1669560 MISS: 330441
HitRate:0.8348%
! ./CacheSim gcc_ld_trace.txt 8 4
HIT:1775198 MISS: 224803
HitRate:0.8876%
! ./CacheSim gcc_ld_trace.txt 16 4
HIT:1849934 MISS: 150067
HitRate:0.9250%
! ./CacheSim gcc_ld_trace.txt 32 4
HIT:1895088 MISS: 104913
HitRate:0.9475%
! ./CacheSim gcc_ld_trace.txt 4 8
HIT:1652147 MISS: 347854
HitRate:0.8261%
! ./CacheSim gcc_ld_trace.txt 8 8
HIT:1766215 MISS: 233786
HitRate:0.8831%
! ./CacheSim gcc_ld_trace.txt 16 8
HIT:1846558 MISS: 153443
HitRate:0.9233%
! ./CacheSim gcc_ld_trace.txt 32 8
HIT:1895885 MISS: 104116
HitRate:0.9479%
! ./CacheSim gcc_ld_trace.txt 4 16
HIT:1677463 MISS: 322538
HitRate:0.8387%
! ./CacheSim gcc_ld_trace.txt 8 16
HIT:1784151 MISS: 215850
HitRate:0.8921%
! ./CacheSim gcc_ld_trace.txt 16 16
HIT:1860161 MISS: 139840
HitRate:0.9301%
! ./CacheSim gcc_ld_trace.txt 32 16
HIT:1906747 MISS: 93254
HitRate:0.9534%
! ./CacheSim gcc_ld_trace.txt 4 32
HIT:1687566 MISS: 312435
HitRate:0.8438%
! ./CacheSim gcc_ld_trace.txt 8 32
HIT:1793431 MISS: 206570
HitRate:0.8967%
! ./CacheSim gcc_ld_trace.txt 16 32
HIT:1867498 MISS: 132503
HitRate:0.9337%
! ./CacheSim gcc_ld_trace.txt 32 32
HIT:1911848 MISS: 88153
HitRate:0.9559%

# Compile the CacheSim.c file
gcc -o AssoCacheSim AssoCacheSim.c
# Run the AssoCacheSim file
# <trace_file> gcc_ld_trace.txt
# <cache_size> 1 KB
# <associativity> 2 (two-way)
# <replacement_policy> LRU
./AssoCacheSim gcc_ld_trace.txt 1 2 LRU
! ./AssoCacheSim gcc_ld_trace.txt 1 2 LRU
Cache Size: 1 KB, Associativity: 2-way, Policy: LRU
Hits: 1491704, Misses: 508297, Hit Rate: 74.59%
! ./AssoCacheSim gcc_ld_trace.txt 4 2 LRU
Cache Size: 4 KB, Associativity: 2-way, Policy: LRU
Hits: 1759588, Misses: 240413, Hit Rate: 87.98%
...
! ./AssoCacheSim gcc_ld_trace.txt 1024 4 RR
Cache Size: 1024 KB, Associativity: 4-way, Policy: RR
Hits: 1974753, Misses: 25248, Hit Rate: 98.74%
